我覺得這篇文章是寫給當初做畢專時水深火熱的自己。
同時希望可以幫助到其他正要著手於AI主題/產品的人們。
當已經確定主題,比如說我想做個 導航(背後使用ML)的主題,那其實可以先想想AI可以帶來什麼益處,以及是否還有其他解法。
那通常 ML 的 function 是用於 output 為模糊的情況,何謂模糊? Ans : 就算聘用好幾個工程師寫了好幾個 rules,也沒辦法精準地
得出結果。
以前在做這個導航主題時,一直在想或是懷疑為什需要用到AI,明明 距離/速率 = (起點到終點所花的時間) 可以解決的問題 ,雖然最核心的部分是這樣,但其實複雜度還是有一定程度。必須先知道有哪些路,路的方向性,使用哪個演算法(Dijkstra)算幾種路徑,哪個路徑最優。
再一次詢問老師的過程後,終於有說服自己的理由。
老師給我回答是 解決問題的方法很多種,而直接物理(距離/速率)是一種,而使用ML也是其中一種。
這邊我自己補充,或許做直觀的方式都視為理所當然,無其他的方法,但是我們並不能知道哪個方法是最好的,總要做個嘗試。
回到最原本的問題,how to choose model ?
取決於 output 是什麼 ! 還有 在監督式學習當中我們需要Trainning Data,所以必須先Collect Data,而要Collect 哪些data呢?
就是 那些特徵值,會影響結果的因素,而這些特徵值,需要量化,因為要input進Machine。
而那些 餵哪些資料效果會最好呢? 沒有人會知道,所以需要做組合搭配 實驗看看。
[補充]
在 導航這個主題裡,目的是要達成 預測 精準的花費時間
及 提供最快速到達目的地的路線選擇 。
output 模糊在哪,在於 就算距離/速率也不一定 可以知道我究竟何時會到,可能塞車,可能道路施工 blabla。
[hightlight]
如果 Output是數值(scaler)
, 那 task 為 Regression ,method 可能是 linear model 。
那 如何擁有 linear model ,可以參考 Tensorflow ,Keras ,Sklearn ,或是依照數學的方法,自己刻一個出來。
如果 Output是 選擇題(幾選1) ,那就是 Classification 。
如果 Output是 是非題 (二選1) ,那就是 Binary Classification。
而 更複雜的問題 影像辨識,需要更複雜的方法,例如 : Deep Learning 。
[李宏毅老師上課筆記 youtube]
[致謝]
謝謝當初 告訴我學習教材,指引我方向的 派大星 學長(fb頭貼為派大星)
以及 謝謝雖然不是台大的學生,仍願意提供這麼優質的教材的宏毅老師!
派大星...?完全不知道是誰哈哈哈~
當時做專題辛苦了 專題夥伴~
書永學長
我剛剛想了一下
從我微薄的記憶裡面把他挖出來了XD
印象中是個很熱心、教大家寫程式的學長
沒錯 ! 他超讚的 <3